package br.com.cicero.notasfiscais.conversores;

import javax.enterprise.context.RequestScoped;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;
import javax.inject.Inject;
import javax.persistence.EntityManager;

import br.com.cicero.notasfiscais.modelo.Produto;

@FacesConverter(forClass=Produto.class)
@RequestScoped
public class ProdutoConverter implements Converter {
	
	@Inject
	private EntityManager entityManager;

	@Override
	public Object getAsObject(FacesContext ctx, UIComponent comp, String value) {
		Long id = Long.valueOf(value);
		return entityManager.find(Produto.class, id);
	}

	@Override
	public String getAsString(FacesContext ctx, UIComponent comp, Object value) {
		Produto produto = (Produto) value;
		return String.valueOf(produto.getId());
	}

}
